#include <windows.h>
#include <cstring>
#include <string>
#include <cstdio>
#include <tchar.h>
#include "MyDirectInput8.h"
//tchar converting 
#include <atlbase.h>
#include <atlconv.h>
#include <detours.h>
#pragma comment( lib, "detours.lib" )
#pragma comment( lib, "user32.lib" )
#pragma comment ( lib, "Dxguid.lib" ) 
#define DLLEXPORT __declspec (dllexport)

namespace Mydll{

  //phototyping
  HRESULT WINAPI DirectInput8Create( HINSTANCE hinst,
        DWORD dwVersion,
        REFIID riidltf,
        LPVOID *ppvOut,
        LPUNKNOWN punkOuter
    ); 

  HRESULT __stdcall DllCanUnloadNow(void);

  HRESULT __stdcall DllGetClassObject(
    _In_   REFCLSID rclsid,
    _In_   REFIID riid,
    _Out_  LPVOID *ppv
  );

  HRESULT __stdcall DllRegisterServer(void);

  HRESULT __stdcall DllUnregisterServer(void);
  //phototyping end

  typedef HRESULT (WINAPI *f_func)( 
      HINSTANCE hinst,
      DWORD dwVersion,
      REFIID riidltf,
      LPVOID *ppvOut,
      LPUNKNOWN punkOuter
  );  
}
